﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Arquitetura.Architectural.Model;
using Arquitetura.Architectural.DataLayer;
using Arquitetura.Model;

namespace Arquitetura.DataLayer
{
    public interface IAlunoData : IData
    {
        Resultado<IQueryable<Aluno>> Select();
        Resultado<IQueryable<Aluno>> Select(IEnumerable<string> attributosEntidadeIncluidos);
        Resultado<IQueryable<Mae>> SelectMae();
        Resultado<IQueryable<Pai>> SelectPai();

        Resultado InsertAluno(Aluno aluno);
        Resultado UpdateAluno(Aluno aluno);
        Resultado DeleteAluno(Aluno aluno);

        Resultado InsertMae(Mae mae);
        Resultado UpdateMae(Mae mae);

        Resultado InsertPai(Pai pai);
        Resultado UpdatePai(Pai pai);
    }
}
